package com.asion.vmovie.ui.MVPContract;

import com.asion.vmovie.beans.DetialsBean;
import com.asion.vmovie.beans.LunBoBean;
import com.asion.vmovie.ui.MVPModel.BaseModel;
import com.asion.vmovie.ui.MVPPresenter.BasePresenter;
import com.asion.vmovie.ui.MVPView.BaseView;

/**
 * Created by asion on 16-10-18.
 */

public interface NewsContract {

    interface Model extends BaseModel{
        void getNewsData(int p,int size,OnGetNewsSuccess onGetNewsSuccess);
        void getBanner(OnGetBanner onGetBanner);
    }

    interface View extends BaseView{

    }

    abstract class Presenter extends BasePresenter<View,Model>{
        public abstract void getNewsData(int p,int size);
        public abstract void getBanner();
    }

    interface OnGetNewsSuccess{
        void onGetSuccess(DetialsBean detialsBean);
        void onGetError(Throwable throwable);
    }

    interface OnGetBanner{
        void onSuccess(LunBoBean lunBoBean);
        void onError(Throwable throwable);
    }
}
